Experiencing Various Massively Parallel Architectures and Programming Models for Data-Intensive Applications

نویسندگان

  • Hongliang Gao
  • Martin Dimitrov
  • Jingfei Kong
  • Huiyang Zhou
چکیده

With the future workloads predicted to feature petascale data sets, we developed a course on exploring various massively parallel architectures and programming models for data-intensive applications. The course covers the architectures of three processors, AMD/ATI RV670 Streaming graphics processors, Nvidia G80 graphics processors, and Cell Broadband Engines, and their latest programming support. The course starts with the single-program multiple-data (SPMD) programming model on ATI/Nvidia graphics processors and extends to the multiple-program multiple-data (MPMD) model using Cell processors. In this paper, we report our experience in developing & teaching this course and present some interesting insights learnt from exploring these different architectures. The results from the students’ program experiences are promising: the SPMD model is easy to grasp and with a sound understanding of architectural features, significant performance gains can be achieved through various program optimizations. For example, one optimized matrix multiplication algorithm has been developed, which outperforms the carefully tuned library code (Nvidia CUBLAS) by 49%.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Parallel multi-dimensional range query processing with R-trees on GPU

The general purpose computing on graphics processing unit (GP-GPU) has emerged as a new cost effective parallel computing paradigm in high performance computing research that enables large amount of data to be processed in parallel. Large scale scientific data intensive applications have been playing an important role in modern high performance computing research. A common access pattern into s...

متن کامل

Developing High-Level Irregularly-Parallel Programs for Multiple Architectures

The variety of parallel architectures nowadays available implies that models for parallel software development should deliver acceptable performance on a range of architectures with minimal development effort. One approach is to use languages with very high level, and substantially architecture-independent, specification of parallel coordination. This paper presents a novel profiling-based meth...

متن کامل

مدل عملکردی تحلیلی FPGA برای پردازش با قابلیت پیکربندی مجدد

Optimizing FPGA architectures is one of the key challenges in digital design flow. Traditionally, FPGA designers make use of CAD tools for evaluating architectures in terms of the area, delay and power. Recently, analytical methods have been proposed to optimize the architectures faster and easier. A complete analytical power, area and delay model have received little attention to date. In addi...

متن کامل

Programming Massively Parallel Architectures using MARTE: a Case Study

Nowadays, several industrial applications are being ported to parallel architectures. These applications take advantage of the potential parallelism provided by multiple core processors. Many-core processors, especially the GPUs(Graphics Processing Unit), have led the race of floating-point performance since 2003. While the performance improvement of generalpurpose microprocessors has slowed si...

متن کامل

An Ai-based Approach to Massively Parallel Programming

Although massively parallel architectures are expected to provide the next major advance in computing power, writing applications on parallel distributed computers is considerably more diicult than programming conventional computers. Today's parallel distributed programming requires from the programmer to take care of quite complex tasks such as data and load distribution, data communication, p...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008